Proje Versiyonlama Süreci¶
Bu süreç, ISO/IEC 15504 SPICE standartlarına uygun olarak GitLab platformunun proje geliştirme, versiyon kontrolü ve CI/CD süreçleri için nasıl kullanılacağını tanımlar.
Sürecin Ana Hedefleri:
- GitLab'da standart proje oluşturma ve yönetimi
- SPICE uyumlu kod yönetimi ve kalite kontrol
- CI/CD pipeline'ları ile otomatik build/test/deploy
- Kod inceleme süreçleri
ISO/IEC 15504 SPICE | SUP.7 Documentation ve SUP.8 Konfigürasyon Yönetimi gereksinimlerinin karşılanması beklenmektedir.
İlgili süreç Jira Süreci ve Proje Yönetim Süreci ile birlikte uygulanır.
Repository Yönetimi¶
1. Repository Oluşturma¶
- Naming Convention: [PROJE-KODU]-[MODUL] formatında (örn: ADPN-frontend, NTWT-api)
- Visibility: Private (default) veya Internal
- Description: Açıklayıcı proje tanımı
- Template: Proje tipine göre template kullanımı
2. Repository Yapısı¶
Proje ile ilgili dökümanlar Wiki sekmesinde saklanmalı
3. Erişim Kontrolü¶
| Rol | Yetki | Açıklama |
|---|---|---|
| Owner | Tam yetki | Proje Yöneticisi |
| Maintainer | Merge yetkisi | Teknik Lider/Senior Developer |
| Developer | Push yetkisi | Geliştirici |
| Reporter | Okuma yetkisi | Stakeholder/Test Uzmanı |
Branch Stratejisi¶
Git - Jira Flow Modeli¶
Branch Türleri¶
| Branch Türü | Naming | Açıklama |
|---|---|---|
| master | master | Production ready kod |
| task | task/JIRA-XXX | Task ile ilgili geliştirmeler |
| feature | feature/JIRA-XXX | Yeni özellik geliştirme |
| bugfix | hotfix/JIRA-XXX | Kritik hata düzeltme |
Branch Kuralları¶
- master branch korunmalı (protected)
- Direct push sadece Maintainer ve Owner rolündeki kullanıcılar yapabilir, diğerleri sadece Merge Request ile ana brancha kodlarını gönderebilir.
Merge Request Süreci¶
Merge Request Oluşturma¶
| Alan | Format | Açıklama |
|---|---|---|
| Title | feature/bugfix/hotfix/[JIRA-XXX]: Fix açıklaması | Jira ticket referansı |
| Description | Template kullanımı | Değişiklik detayları |
| Assignee | Kod inceleyicisi | Kodu inceleyecek kişi |
Yazar/İnceleyici Döngüsü¶
| Rol | Sorumluluk | Durum Geçişi |
|---|---|---|
| Yazar (Geliştirici) | MR oluşturur, değişiklikleri yapar | Taslak → İnceleme İçin Hazır |
| İnceleyici | Kodu inceler, onaylar/reddeder | İnceleme İçin Hazır → Onaylandı/Değişiklik Talep Edildi |
| Bakımcı | Birleştirme işlemini gerçekleştirir | Onaylandı → Birleştirildi |
Kod İnceleme Kriterleri¶
- Kod SPICE kalite standartlarına uygun mu?
- Unit testler yazıldı mı?
- Döküman güncellendi mi?
- Breaking change var mı?
- Security açığı var mı?
- Performance etkilenme var mı?
GitLab Kullanım Kontrol Listesi¶
- Repository doğru naming ile oluşturuldu mu?
- Branch protection kuralları aktif mi?
- CI/CD pipeline yapılandırıldı mı?
- Kod inceleme süreci tanımlandı mı?
- Jira entegrasyonu kuruldu mu?
- Access control ayarları yapıldı mı?
- README ve dökümanlar hazırlandı mı?
- Security scan'ler aktif mi?
Not: Bu dokümandaki tüm bilgiler ISO/IEC 15504 SPICE | SUP.7 Documentation ve SUP.8 Konfigürasyon Yönetimi gereksinimlerine uygun olarak hazırlanmış ve proje dosyasında arşivlenmiştir.
Bu süreç dökümanı, tüm geliştirici ekiplerinin GitLab kullanımı konusunda aynı standartları uygulamasını sağlamak amacıyla hazırlanmıştır.